]> shimmer.witbreuk.eu Git - UltimateKEYS.git/blobdiff - autohotkey/UltimateKEYS (for AutoHotkey v1.1).ahk
Add files via upload
[UltimateKEYS.git] / autohotkey / UltimateKEYS (for AutoHotkey v1.1).ahk
index b9987c95433b32050f16107d9f98f3f99ab7339e..e858aa0155929bddaa034d74a13165a79ac0e0fe 100644 (file)
@@ -1,25 +1,23 @@
-#Requires AutoHotkey v1.1
+#requires AutoHotkey v1.1
 
-; UltimateKEYS (for AutoHotkey v1.1).ahk - 2023-04-18
+; UltimateKEYS (for AutoHotkey v1.1).ahk - 2024-06-04
 
-; Website :  www.ultimatekeys.info (pieter-degroote.github.io/UltimateKEYS/)
+; Website :  https://pieter-degroote.github.io/UltimateKEYS/
 
-; License :  GNU General Public License Version 3
+; GitHub :   https://github.com/pieter-degroote/UltimateKEYS
 
-; GitHub :   github.com/pieter-degroote/UltimateKEYS
+; License :  GNU General Public License Version 3
 
 
-; Requirements :
+; Configuration :
 
 ; Keyboard layout (on Windows) :  US QWERTY
 
-; AutoHotkey v1.1 (www.autohotkey.com)
-
 
 
 #NoEnv          ; avoids checking empty variables to see if they are environment variables
-ListLines Off   ; omits recently executed lines from history (for privacy and security)
 #KeyHistory 0   ; disables the key history (for privacy and security)
+ListLines Off   ; omits recently executed lines from history (for privacy and security)
 
 SendMode Input  ; optimizes for faster and more reliable input
 
@@ -69,7 +67,6 @@ cmpAcuteAccent.item["y"] := "{u+00fd}"  ; (ý) y with acute
 cmpAcuteAccent.item["Y"] := "{u+00dd}"  ; (Ý) Y with acute
 cmpAcuteAccent.item["z"] := "{u+017a}"  ; (ź) z with acute
 cmpAcuteAccent.item["Z"] := "{u+0179}"  ; (Ź) Z with acute
-cmpAcuteAccent.item[" "] := "{u+00b4}"  ; (´) acute accent
 
 
 ; Compose :  Grave Accent (`)
@@ -91,7 +88,6 @@ cmpGraveAccent.item["w"] := "{u+1e81}"  ; (ẁ) w with grave
 cmpGraveAccent.item["W"] := "{u+1e80}"  ; (Ẁ) W with grave
 cmpGraveAccent.item["y"] := "{u+1ef3}"  ; (ỳ) y with grave
 cmpGraveAccent.item["Y"] := "{u+1ef2}"  ; (Ỳ) Y with grave
-cmpGraveAccent.item[" "] := "{u+02cb}"  ; (ˋ) grave accent (modifier)
 
 
 ; Compose :  Diaeresis (")
@@ -116,7 +112,6 @@ cmpDiaeresis.item["x"] := "{u+1e8d}"  ; (ẍ) x with diaeresis
 cmpDiaeresis.item["X"] := "{u+1e8c}"  ; (Ẍ) X with diaeresis
 cmpDiaeresis.item["y"] := "{u+00ff}"  ; (ÿ) y with diaeresis
 cmpDiaeresis.item["Y"] := "{u+0178}"  ; (Ÿ) Y with diaeresis
-cmpDiaeresis.item[" "] := "{u+00a8}"  ; (¨) diaeresis
 
 
 ; Compose :  Circumflex Accent (c)
@@ -148,7 +143,6 @@ cmpCircumflex.item["y"] := "{u+0177}"  ; (ŷ) y with circumflex
 cmpCircumflex.item["Y"] := "{u+0176}"  ; (Ŷ) Y with circumflex
 cmpCircumflex.item["z"] := "{u+1e91}"  ; (ẑ) z with circumflex
 cmpCircumflex.item["Z"] := "{u+1e90}"  ; (Ẑ) Z with circumflex
-cmpCircumflex.item[" "] := "{u+02c6}"  ; (ˆ) circumflex accent (modifier)
 
 
 ; Compose :  Tilde (~)
@@ -172,7 +166,6 @@ cmpTilde.item["v"] := "{u+1e7d}"  ; (ṽ) v with tilde
 cmpTilde.item["V"] := "{u+1e7c}"  ; (Ṽ) V with tilde
 cmpTilde.item["y"] := "{u+1ef9}"  ; (ỹ) y with tilde
 cmpTilde.item["Y"] := "{u+1ef8}"  ; (Ỹ) Y with tilde
-cmpTilde.item[" "] := "{u+02dc}"  ; (˜) small tilde
 
 
 ; Compose :  Cedilla and Ogonek (,)
@@ -210,8 +203,6 @@ cmpCedillaOgonek.item["t"] := "{u+0163}"  ; (ţ) t with cedilla
 cmpCedillaOgonek.item["T"] := "{u+0162}"  ; (Ţ) T with cedilla
 cmpCedillaOgonek.item["u"] := "{u+0173}"  ; (ų) u with ogonek
 cmpCedillaOgonek.item["U"] := "{u+0172}"  ; (Ų) U with ogonek
-cmpCedillaOgonek.item["."] := "{u+02db}"  ; (˛) ogonek
-cmpCedillaOgonek.item[" "] := "{u+00b8}"  ; (¸) cedilla
 
 
 ; Compose :  Caron (v)
@@ -252,7 +243,6 @@ cmpCaron.item["z"] := "{u+017e}"  ; (ž) z with caron
 cmpCaron.item["Z"] := "{u+017d}"  ; (Ž) Z with caron
 cmpCaron.item["3"] := "{u+01ef}"  ; (ǯ) small letter ezh with caron
 cmpCaron.item["#"] := "{u+01ee}"  ; (Ǯ) capital letter ezh with caron
-cmpCaron.item[" "] := "{u+02c7}"  ; (ˇ) caron
 
 
 ; Compose :  Dot Above (.)
@@ -354,7 +344,6 @@ cmpMacronStroke.item["y"] := "{u+0233}"  ; (ȳ) y with macron
 cmpMacronStroke.item["Y"] := "{u+0232}"  ; (Ȳ) Y with macron
 cmpMacronStroke.item["z"] := "{u+01b6}"  ; (ƶ) z with stroke
 cmpMacronStroke.item["Z"] := "{u+01b5}"  ; (Ƶ) Z with stroke
-cmpMacronStroke.item[" "] := "{u+00af}"  ; (¯) macron
 
 
 ; Compose :  Macron and Stroke (additional) (_)
@@ -434,7 +423,6 @@ cmpBreveSpecial.item["y"] := "{u+021d}"  ; (ȝ) small letter yogh
 cmpBreveSpecial.item["Y"] := "{u+021c}"  ; (Ȝ) capital letter yogh
 cmpBreveSpecial.item["3"] := "{u+0292}"  ; (ʒ) small letter ezh
 cmpBreveSpecial.item["#"] := "{u+01b7}"  ; (Ʒ) capital letter ezh
-cmpBreveSpecial.item[" "] := "{u+02d8}"  ; (˘) breve
 
 
 ; Compose :  Double Acute Accent (=)
@@ -444,7 +432,6 @@ cmpDoubleAcute.item["o"] := "{u+0151}"  ; (ő) o with double acute
 cmpDoubleAcute.item["O"] := "{u+0150}"  ; (Ő) O with double acute
 cmpDoubleAcute.item["u"] := "{u+0171}"  ; (ű) u with double acute
 cmpDoubleAcute.item["U"] := "{u+0170}"  ; (Ű) U with double acute
-cmpDoubleAcute.item[" "] := "{u+02dd}"  ; (˝) double acute accent
 
 
 ; Compose :  Hook and Horn (h)
@@ -504,12 +491,11 @@ cmpSmallF.item["H"] := "{u+a726}"  ; (Ꜧ) capital letter heng
 cmpSmallF.item["j"] := "{u+029d}"  ; (ʝ) j with crossed-tail
 cmpSmallF.item["l"] := "{u+026d}"  ; (ɭ) l with retroflex hook
 cmpSmallF.item["n"] := "{u+0273}"  ; (ɳ) n with retroflex hook
+cmpSmallF.item["q"] := "{u+02a0}"  ; (ʠ) q with hook
 cmpSmallF.item["r"] := "{u+027e}"  ; (ɾ) r with fishhook
 cmpSmallF.item["t"] := "{u+0288}"  ; (ʈ) t with retroflex hook
 cmpSmallF.item["T"] := "{u+01ae}"  ; (Ʈ) T with retroflex hook
 cmpSmallF.item["v"] := "{u+2c71}"  ; (ⱱ) v with right hook
-cmpSmallF.item["w"] := "{u+2c73}"  ; (ⱳ) w with right hook
-cmpSmallF.item["W"] := "{u+2c72}"  ; (Ⱳ) W with right hook
 cmpSmallF.item["z"] := "{u+0290}"  ; (ʐ) z with retroflex hook
 
 
@@ -539,10 +525,15 @@ cmpSmallL.item["N"] := "{u+0220}"  ; (Ƞ) capital letter N with long right leg
 cmpSmallL.item["o"] := "{u+0254}"  ; (ɔ) small letter open o
 cmpSmallL.item["O"] := "{u+0186}"  ; (Ɔ) capital letter open O
 cmpSmallL.item["q"] := "{u+0277}"  ; (ɷ) Latin small letter closed omega
-cmpSmallL.item["s"] := "{u+0283}"  ; (ʃ) small letter esh
-cmpSmallL.item["S"] := "{u+01a9}"  ; (Ʃ) capital letter esh
+cmpSmallL.item["s"] := "{u+0283}"  ; (ʃ) Latin small letter esh
+cmpSmallL.item["S"] := "{u+01a9}"  ; (Ʃ) Latin capital letter esh
 cmpSmallL.item["u"] := "{u+028a}"  ; (ʊ) Latin small letter upsilon
 cmpSmallL.item["U"] := "{u+01b1}"  ; (Ʊ) Latin capital letter upsilon
+cmpSmallL.item["8"] := "{u+0223}"  ; (ȣ) small letter ou
+cmpSmallL.item["*"] := "{u+0222}"  ; (Ȣ) capital letter OU
+cmpSmallL.item["7"] := "{u+0242}"  ; (ɂ) small letter glottal stop
+cmpSmallL.item["&"] := "{u+0241}"  ; (Ɂ) capital letter glottal stop
+cmpSmallL.item["?"] := "{u+0294}"  ; (ʔ) unicase letter glottal stop
 
 
 ; Compose :  Turned Letters (r)
@@ -620,7 +611,6 @@ cmpCurrency.item["W"] := "{u+20a9}"  ; (₩) South Korean won
 cmpCurrency.item["x"] := "{u+00a4}"  ; (¤) currency sign
 cmpCurrency.item["y"] := "{u+00a5}"  ; (¥) yen sign
 cmpCurrency.item["Y"] := "{u+00a5}"  ; (¥) yen sign
-cmpCurrency.item[" "] := "{u+00a4}"  ; (¤) currency sign
 
 
 ; Compose :  Greek Alphabet (g)
@@ -663,8 +653,8 @@ cmpGreek.item["P"] := "{u+03a0}"  ; (Π) Greek capital pi
 cmpGreek.item["r"] := "{u+03c1}"  ; (ρ) Greek small rho
 cmpGreek.item["R"] := "{u+03a1}"  ; (Ρ) Greek capital rho
 cmpGreek.item["s"] := "{u+03c3}"  ; (σ) Greek small sigma
-cmpGreek.item["S"] := "{u+03a3}"  ; (Σ) Greek capital sigma
 cmpGreek.item[","] := "{u+03c2}"  ; (ς) Greek small final sigma
+cmpGreek.item["S"] := "{u+03a3}"  ; (Σ) Greek capital sigma
 cmpGreek.item["t"] := "{u+03c4}"  ; (τ) Greek small tau
 cmpGreek.item["T"] := "{u+03a4}"  ; (Τ) Greek capital tau
 cmpGreek.item["u"] := "{u+03c5}"  ; (υ) Greek small upsilon
@@ -761,8 +751,8 @@ cmpSpace.item["8"] := "{u+200a}"  ; hair space
 cmpSpace.item["9"] := "{u+2007}"  ; figure space
 cmpSpace.item["0"] := "{u+200b}"  ; zero-width space (ZWSP)
 cmpSpace.item["m"] := "{u+205f}"  ; medium mathematical space (MMSP)
+cmpSpace.item["n"] := "{u+202f}"  ; narrow no-break space (NNBSP)
 cmpSpace.item[" "] := "{u+00a0}"  ; non-breaking space (NBSP)
-cmpSpace.item["."] := "{u+202f}"  ; narrow no-break space (NNBSP)
 cmpMacronStroke.item["2"] := "{u+2013}"  ; (–) en dash
 cmpMacronStroke.item["3"] := "{u+2014}"  ; (—) em dash
 cmpMacronStroke.item["4"] := "{u+2015}"  ; (―) horizontal bar
@@ -774,7 +764,7 @@ cmpQuad.item["2"] := "{u+2000}"  ; en quad
 cmpQuad.item["3"] := "{u+2001}"  ; em quad
 
 
-; Compose :  Arrows and Pointers
+; Compose :  Arrows and Pointing Triangles
 
 cmpArrow := ComObjCreate("Scripting.Dictionary")
 cmpArrow.item["w"] := "{u+25b2}"  ; (▲) black up-pointing triangle
@@ -817,14 +807,19 @@ cmpSymbols.item["c"] := "{u+2105}"  ; (℅) care of
 cmpSymbols.item["d"] := "{u+22c4}"  ; (⋄) diamond operator
 cmpSymbols.item["e"] := "{u+212e}"  ; (℮) estimated symbol
 cmpSymbols.item["f"] := "{u+2640}"  ; (♀) female sign (Venus)
-cmpSymbols.item["h"] := "{u+2126}"  ; (Ω) ohm sign (backwards compatibility)
+cmpSymbols.item["h"] := "{u+2302}"  ; (⌂) house
+cmpSymbols.item["H"] := "{u+2126}"  ; (Ω) ohm sign (backwards compatibility)
 cmpSymbols.item["i"] := "{u+2300}"  ; (⌀) diameter sign
 cmpSymbols.item["l"] := "{u+2113}"  ; (ℓ) script small l
 cmpSymbols.item["L"] := "{u+2112}"  ; (ℒ) Laplace transform
 cmpSymbols.item["m"] := "{u+2642}"  ; (♂) male sign (Mars)
 cmpSymbols.item["M"] := "{u+2120}"  ; (℠) service mark
-cmpSymbols.item["r"] := "{u+211e}"  ; (℞) prescription take (Recipere)
-cmpSymbols.item["R"] := "{u+211e}"  ; (℞) prescription take (Recipere)
+cmpSymbols.item["p"] := "{u+211e}"  ; (℞) prescription take (Recipere)
+cmpSymbols.item["P"] := "{u+211e}"  ; (℞) prescription take (Recipere)
+cmpSymbols.item["r"] := "{u+211f}"  ; (℟) response (liturgy)
+cmpSymbols.item["R"] := "{u+211f}"  ; (℟) response (liturgy)
+cmpSymbols.item["v"] := "{u+2123}"  ; (℣) versicle (liturgy)
+cmpSymbols.item["V"] := "{u+2123}"  ; (℣) versicle (liturgy)
 cmpSymbols.item["x"] := "{u+203b}"  ; (※) reference mark
 cmpSymbols.item["2"] := "{u+266b}"  ; (♫) beamed eighth notes
 cmpSymbols.item["3"] := "{u+2042}"  ; (⁂) asterism
@@ -881,18 +876,21 @@ cmpMathSymbols.item["U"] := "{u+2216}"  ; (∖) set minus
 cmpMathSymbols.item["w"] := "{u+2118}"  ; (℘) Weierstrass elliptic function
 cmpMathSymbols.item["z"] := "{u+21af}"  ; (↯) downwards zigzag arrow
 cmpMathSymbols.item["Z"] := "{u+2124}"  ; (ℤ) whole numbers
+cmpMathSymbols.item["2"] := "{u+2236}"  ; (∶) ratio symbol
+cmpMathSymbols.item["4"] := "{u+2237}"  ; (∷) proportion sign
 cmpMathSymbols.item["6"] := "{u+2220}"  ; (∠) angle symbol
-cmpMathSymbols.item["&"] := "{u+2227}"  ; (∧) logical and
-cmpMathSymbols.item["8"] := "{u+2297}"  ; (⊗) circled times
-cmpMathSymbols.item["*"] := "{u+2299}"  ; (⊙) circled dot operator
 cmpMathSymbols.item["9"] := "{u+221f}"  ; (∟) right angle
 cmpMathSymbols.item["0"] := "{u+2221}"  ; (∡) measured angle
+cmpMathSymbols.item[","] := "{u+2219}"  ; (∙) bullet operator
 cmpMathSymbols.item["+"] := "{u+2295}"  ; (⊕) circled plus
 cmpMathSymbols.item["-"] := "{u+2296}"  ; (⊖) circled minus
+cmpMathSymbols.item["*"] := "{u+2297}"  ; (⊗) circled times
 cmpMathSymbols.item["/"] := "{u+2298}"  ; (⊘) circled division slash
+cmpMathSymbols.item["."] := "{u+2299}"  ; (⊙) circled dot operator
 cmpMathSymbols.item["="] := "{u+225d}"  ; (≝) equal to by definition
 cmpMathSymbols.item[";"] := "{u+2235}"  ; (∵) because sign
 cmpMathSymbols.item[":"] := "{u+2234}"  ; (∴) therefore sign
+cmpMathSymbols.item["&"] := "{u+2227}"  ; (∧) logical and
 cmpMathSymbols.item["|"] := "{u+2228}"  ; (∨) logical or
 
 
@@ -930,7 +928,7 @@ cmpCapitalT.item["H"] := "{u+00de}"   ; (Þ) capital letter thorn
 
 cmpDigitEight := ComObjCreate("Scripting.Dictionary")
 cmpCapitalP := ComObjCreate("Scripting.Dictionary")
-cmpSemicolon := ComObjCreate("Scripting.Dictionary")
+cmpVerticalLine := ComObjCreate("Scripting.Dictionary")
 cmpAsterisk := ComObjCreate("Scripting.Dictionary")
 cmpExclam := ComObjCreate("Scripting.Dictionary")
 cmpQuestion := ComObjCreate("Scripting.Dictionary")
@@ -955,14 +953,7 @@ cmpSmallR.item["4"] := "{u+221c}"        ; (∜) fourth root
 cmpSymbols.item["o"] := "{u+00a7}"       ; (§) section sign
 cmpCapitalS.item["o"] := "{u+00a7}"      ; (§) section sign
 cmpSmallT.item["m"] := "{u+2122}"        ; (™) trademark symbol
-cmpSemicolon.item["b"] := "{u+2022}"     ; (•) bullet
-cmpSemicolon.item[";"] := "{u+2022}"     ; (•) bullet
-cmpSemicolon.item["t"] := "{u+2023}"     ; (‣) triangular bullet
-cmpSemicolon.item[">"] := "{u+2023}"     ; (‣) triangular bullet
-cmpSemicolon.item["h"] := "{u+2043}"     ; (⁃) hyphen bullet
-cmpSemicolon.item["-"] := "{u+2043}"     ; (⁃) hyphen bullet
-cmpSemicolon.item["w"] := "{u+25e6}"     ; (◦) white bullet
-cmpSemicolon.item["o"] := "{u+25e6}"     ; (◦) white bullet
+cmpVerticalLine.item["|"] := "{u+2016}"  ; (‖) double vertical line
 cmpAcuteAccent.item["1"] := "{u+2032}"   ; (′) prime
 cmpAcuteAccent.item["2"] := "{u+2033}"   ; (″) double prime
 cmpAcuteAccent.item["3"] := "{u+2034}"   ; (‴) triple prime
@@ -971,9 +962,9 @@ cmpAsterisk.item["*"] := "{u+00d7}"      ; (×) multiplication sign
 cmpStroke.item["/"] := "{u+00f7}"        ; (÷) division sign
 cmpAsterisk.item["o"] := "{u+00b0}"      ; (°) degree sign
 cmpRingAbove.item["*"] := "{u+00b0}"     ; (°) degree sign
-cmpDotAbove.item["."] := "{u+00b7}"      ; (·) middle dot
-cmpDotAbove.item[" "] := "{u+00b7}"      ; (·) middle dot
+cmpDotAbove.item["-"] := "{u+00b7}"      ; (·) middle dot
 cmpDotAbove.item["3"] := "{u+2026}"      ; (…) horizontal ellipsis
+cmpDotAbove.item["."] := "{u+2026}"      ; (…) horizontal ellipsis
 cmpArrow.item["-"] := "{u+00aa}"         ; (ª) feminine ordinal indicator (Spanish, Portuguese, Italian, Galician)
 cmpRingAbove.item["-"] := "{u+00ba}"     ; (º) masculine ordinal indicator (Spanish, Portuguese, Italian, Galician)
 cmpExclam.item["!"] := "{u+00a1}"        ; (¡) inverted exclamation mark
@@ -998,6 +989,30 @@ cmpGreaterThan.item["+"] := "{u+2a7e}"   ; (⩾) greater-than or slanted equal t
 cmpTilde.item["~"] := "{u+2248}"         ; (≈) almost equal to
 
 
+; Compose :  Bullets and Small Geometric Shapes (;)
+
+cmpSemicolon := ComObjCreate("Scripting.Dictionary")
+cmpSemicolon.item["b"] := "{u+2022}"  ; (•) bullet
+cmpSemicolon.item["o"] := "{u+25e6}"  ; (◦) white bullet
+cmpSemicolon.item["h"] := "{u+2043}"  ; (⁃) hyphen bullet
+cmpSemicolon.item["t"] := "{u+2023}"  ; (‣) triangular bullet
+cmpSemicolon.item["q"] := "{u+25aa}"  ; (▪) black small square
+cmpSemicolon.item["u"] := "{u+25ab}"  ; (▫) white small square
+cmpSemicolon.item["w"] := "{u+25b4}"  ; (▴) black up-pointing small triangle
+cmpSemicolon.item["a"] := "{u+25c2}"  ; (◂) black left-pointing small triangle
+cmpSemicolon.item["s"] := "{u+25be}"  ; (▾) black down-pointing small triangle
+cmpSemicolon.item["d"] := "{u+25b8}"  ; (▸) black right-pointing small triangle
+cmpSemicolon.item["i"] := "{u+25b5}"  ; (▵) white up-pointing small triangle
+cmpSemicolon.item["j"] := "{u+25c3}"  ; (◃) white left-pointing small triangle
+cmpSemicolon.item["k"] := "{u+25bf}"  ; (▿) white down-pointing small triangle
+cmpSemicolon.item["l"] := "{u+25b9}"  ; (▹) white right-pointing small triangle
+cmpSemicolon.item["z"] := "{u+25a0}"  ; (■) black square
+cmpSemicolon.item["x"] := "{u+25a1}"  ; (□) white square
+cmpSemicolon.item["c"] := "{u+25c6}"  ; (◆) black diamond
+cmpSemicolon.item["v"] := "{u+25c7}"  ; (◇) white diamond
+cmpSemicolon.item[";"] := "{u+2022}"  ; (•) bullet
+
+
 ; Compose :  Vulgar Fractions
 
 cmpDigitOne := ComObjCreate("Scripting.Dictionary")
@@ -1037,6 +1052,7 @@ cmpCedillaOgonek.item[chr(34)] := "{u+201e}"  ; („) double low-9 quotation mar
 cmpDiaeresis.item[","] := "{u+201e}"          ; („) double low-9 quotation mark
 cmpCedillaOgonek.item["'"] := "{u+201a}"      ; (‚) single low-9 quotation mark
 cmpAcuteAccent.item[","] := "{u+201a}"        ; (‚) single low-9 quotation mark
+cmpCedillaOgonek.item[","] := "{u+201a}"      ; (‚) single low-9 quotation mark
 cmpDiaeresis.item["["] := "{u+201c}"          ; (“) left double quotation mark
 cmpBracketLeft.item[chr(34)] := "{u+201c}"    ; (“) left double quotation mark
 cmpDiaeresis.item["]"] := "{u+201d}"          ; (”) right double quotation mark
@@ -1265,6 +1281,8 @@ cmpDigitTwo.item["s"] := "{u+2691}"  ; (⚑) black flag
 cmpDigitTwo.item["t"] := "{u+26a0}"  ; (⚠) warning sign
 cmpDigitTwo.item["u"] := "{u+26a1}"  ; (⚡) high voltage sign
 cmpDigitTwo.item["v"] := "{u+26d4}"  ; (⛔) no entry
+cmpDigitTwo.item["w"] := "{u+231a}"  ; (⌚) watch
+cmpDigitTwo.item["x"] := "{u+231b}"  ; (⌛) hourglass
 
 cmpDigitThree.item["a"] := "{u+2701}"  ; (✁) upper blade scissors
 cmpDigitThree.item["b"] := "{u+2702}"  ; (✂) black scissors
@@ -1490,28 +1508,28 @@ cmpSmallN.item["0"] := "{u+277f}"  ; (❿) dingbat negative circled digit 10
 
 >!z::
   if GetKeyState("CapsLock", "T")
-    Send {u+00c0}  ; (À) A with grave
+    Send {u+00c1}  ; (Á) A with acute
   else
-    Send {u+00e0}  ; (à) a with grave
+    Send {u+00e1}  ; (á) a with acute
   return
 >!+z::
   if GetKeyState("CapsLock", "T")
-    Send {u+00e0}  ; (à) a with grave
+    Send {u+00e1}  ; (á) a with acute
   else
-    Send {u+00c0}  ; (À) A with grave
+    Send {u+00c1}  ; (Á) A with acute
   return
 
 >!x::
   if GetKeyState("CapsLock", "T")
-    Send {u+00c1}  ; (Á) A with acute
+    Send {u+00c0}  ; (À) A with grave
   else
-    Send {u+00e1}  ; (á) a with acute
+    Send {u+00e0}  ; (à) a with grave
   return
 >!+x::
   if GetKeyState("CapsLock", "T")
-    Send {u+00e1}  ; (á) a with acute
+    Send {u+00e0}  ; (à) a with grave
   else
-    Send {u+00c1}  ; (Á) A with acute
+    Send {u+00c0}  ; (À) A with grave
   return
 
 >!d::
@@ -1555,28 +1573,28 @@ cmpSmallN.item["0"] := "{u+277f}"  ; (❿) dingbat negative circled digit 10
 
 >!f::
   if GetKeyState("CapsLock", "T")
-    Send {u+00c8}  ; (È) E with grave
+    Send {u+00c9}  ; (É) E with acute
   else
-    Send {u+00e8}  ; (è) e with grave
+    Send {u+00e9}  ; (é) e with acute
   return
 >!+f::
   if GetKeyState("CapsLock", "T")
-    Send {u+00e8}  ; (è) e with grave
+    Send {u+00e9}  ; (é) e with acute
   else
-    Send {u+00c8}  ; (È) E with grave
+    Send {u+00c9}  ; (É) E with acute
   return
 
 >!g::
   if GetKeyState("CapsLock", "T")
-    Send {u+00c9}  ; (É) E with acute
+    Send {u+00c8}  ; (È) E with grave
   else
-    Send {u+00e9}  ; (é) e with acute
+    Send {u+00e8}  ; (è) e with grave
   return
 >!+g::
   if GetKeyState("CapsLock", "T")
-    Send {u+00e9}  ; (é) e with acute
+    Send {u+00e8}  ; (è) e with grave
   else
-    Send {u+00c9}  ; (É) E with acute
+    Send {u+00c8}  ; (È) E with grave
   return
 
 >!r::
@@ -1607,28 +1625,28 @@ cmpSmallN.item["0"] := "{u+277f}"  ; (❿) dingbat negative circled digit 10
 
 >!v::
   if GetKeyState("CapsLock", "T")
-    Send {u+00cc}  ; (Ì) I with grave
+    Send {u+00cd}  ; (Í) I with acute
   else
-    Send {u+00ec}  ; (ì) i with grave
+    Send {u+00ed}  ; (í) i with acute
   return
 >!+v::
   if GetKeyState("CapsLock", "T")
-    Send {u+00ec}  ; (ì) i with grave
+    Send {u+00ed}  ; (í) i with acute
   else
-    Send {u+00cc}  ; (Ì) I with grave
+    Send {u+00cd}  ; (Í) I with acute
   return
 
 >!b::
   if GetKeyState("CapsLock", "T")
-    Send {u+00cd}  ; (Í) I with acute
+    Send {u+00cc}  ; (Ì) I with grave
   else
-    Send {u+00ed}  ; (í) i with acute
+    Send {u+00ec}  ; (ì) i with grave
   return
 >!+b::
   if GetKeyState("CapsLock", "T")
-    Send {u+00ed}  ; (í) i with acute
+    Send {u+00ec}  ; (ì) i with grave
   else
-    Send {u+00cd}  ; (Í) I with acute
+    Send {u+00cc}  ; (Ì) I with grave
   return
 
 >!t::
@@ -1698,28 +1716,28 @@ cmpSmallN.item["0"] := "{u+277f}"  ; (❿) dingbat negative circled digit 10
 
 >!,::
   if GetKeyState("CapsLock", "T")
-    Send {u+00d2}  ; (Ò) O with grave
+    Send {u+00d3}  ; (Ó) O with acute
   else
-    Send {u+00f2}  ; (ò) o with grave
+    Send {u+00f3}  ; (ó) o with acute
   return
 >!<::
   if GetKeyState("CapsLock", "T")
-    Send {u+00f2}  ; (ò) o with grave
+    Send {u+00f3}  ; (ó) o with acute
   else
-    Send {u+00d2}  ; (Ò) O with grave
+    Send {u+00d3}  ; (Ó) O with acute
   return
 
 >!.::
   if GetKeyState("CapsLock", "T")
-    Send {u+00d3}  ; (Ó) O with acute
+    Send {u+00d2}  ; (Ò) O with grave
   else
-    Send {u+00f3}  ; (ó) o with acute
+    Send {u+00f2}  ; (ò) o with grave
   return
 >!>::
   if GetKeyState("CapsLock", "T")
-    Send {u+00f3}  ; (ó) o with acute
+    Send {u+00f2}  ; (ò) o with grave
   else
-    Send {u+00d3}  ; (Ó) O with acute
+    Send {u+00d2}  ; (Ò) O with grave
   return
 
 >!p::
@@ -1763,28 +1781,28 @@ cmpSmallN.item["0"] := "{u+277f}"  ; (❿) dingbat negative circled digit 10
 
 >!h::
   if GetKeyState("CapsLock", "T")
-    Send {u+00d9}  ; (Ù) U with grave
+    Send {u+00da}  ; (Ú) U with acute
   else
-    Send {u+00f9}  ; (ù) u with grave
+    Send {u+00fa}  ; (ú) u with acute
   return
 >!+h::
   if GetKeyState("CapsLock", "T")
-    Send {u+00f9}  ; (ù) u with grave
+    Send {u+00fa}  ; (ú) u with acute
   else
-    Send {u+00d9}  ; (Ù) U with grave
+    Send {u+00da}  ; (Ú) U with acute
   return
 
 >!j::
   if GetKeyState("CapsLock", "T")
-    Send {u+00da}  ; (Ú) U with acute
+    Send {u+00d9}  ; (Ù) U with grave
   else
-    Send {u+00fa}  ; (ú) u with acute
+    Send {u+00f9}  ; (ù) u with grave
   return
 >!+j::
   if GetKeyState("CapsLock", "T")
-    Send {u+00fa}  ; (ú) u with acute
+    Send {u+00f9}  ; (ù) u with grave
   else
-    Send {u+00da}  ; (Ú) U with acute
+    Send {u+00d9}  ; (Ù) U with grave
   return
 
 >!y::
@@ -1857,7 +1875,7 @@ cmpSmallN.item["0"] := "{u+277f}"  ; (❿) dingbat negative circled digit 10
 >!_::Send {u+2014}   ; (—) em dash
 
 >!=::Send {u+00d7}   ; (×) multiplication sign
->!+=::Send {u+00f7}  ; (÷) division sign
+>!+::Send {u+00f7}   ; (÷) division sign
 
 >![::Send {u+00ab}   ; («) left-pointing double angle quotation mark
 >!{::Send {u+2039}   ; (‹) left-pointing single angle quotation mark
@@ -1868,14 +1886,14 @@ cmpSmallN.item["0"] := "{u+277f}"  ; (❿) dingbat negative circled digit 10
 >!;::Send {u+00b0}   ; (°) degree sign
 >!+;::Send {u+00b7}  ; (·) middle dot
 
->!'::Send {u+2020}   ; (†) dagger
->!"::Send {u+2021}   ; (‡) double dagger
+>!'::Send {u+266a}   ; (♪) eighth note
+>!"::Send {u+266b}   ; (♫) beamed eighth notes
 
 >!\::Send {u+2002}   ;     en space
 >!|::Send {u+2003}   ;     em space
 
 >!/::Send {u+00bf}   ; (¿) inverted question mark
->!?::Send {u+2026}   ; (…) horizontal ellipsis
+>!?::Send {u+2022}   ; (•) bullet
 
 >!space::Send {u+00a0}   ; non-breaking space (NBSP)
 >!+space::Send {u+00a0}  ; non-breaking space (NBSP)
@@ -1884,7 +1902,9 @@ cmpSmallN.item["0"] := "{u+277f}"  ; (❿) dingbat negative circled digit 10
 ; Configuration :  Compose Key Selector
 
 >!`::
+>!~::
 >!sc056::
+>!+sc056::
   Input, keyA, L1, {bs}{del}{esc}{home}{end}
   Input, keyB, L1, {bs}{del}{esc}{home}{end}
 
@@ -1966,8 +1986,8 @@ cmpSmallN.item["0"] := "{u+277f}"  ; (❿) dingbat negative circled digit 10
     Send % cmpCapitalT.item[keyB]
   else if (keyA == "P")
     Send % cmpCapitalP.item[keyB]
-  else if (keyA == ";")
-    Send % cmpSemicolon.item[keyB]
+  else if (keyA == "|")
+    Send % cmpVerticalLine.item[keyB]
   else if (keyA == "*")
     Send % cmpAsterisk.item[keyB]
   else if (keyA == "!")
@@ -1986,6 +2006,8 @@ cmpSmallN.item["0"] := "{u+277f}"  ; (❿) dingbat negative circled digit 10
     Send % cmpLessThan.item[keyB]
   else if (keyA == ">")
     Send % cmpGreaterThan.item[keyB]
+  else if (keyA == ";")
+    Send % cmpSemicolon.item[keyB]
   else if (keyA == "1")
     Send % cmpDigitOne.item[keyB]
   else if (keyA == "2")